As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to these users is an information handling system or computing system. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may vary with respect to the type of information handled; the methods for handling the information; the methods for processing, storing or communicating the information; the amount of information processed, stored, or communicated; and the speed and efficiency with which the information is processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include or comprise a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
The information handling system may include one or more operating systems. An operating system serves many functions, such as controlling access to hardware resources and controlling the execution of application software. Operating systems also provide resources and services to support application software. These resources and services may include a file system, a centralized configuration database (such as the registry found in Microsoft Windows operating systems), a directory service, a graphical user interface, a networking stack, device drivers, and device management software. In some instances, services may be provided by other application software running on the information handling system, such as a database server.
Some information handling systems are designed to interact with other information handling systems over a network connection. In some instances, the information handling systems may share resources over the network. Certain of the networked information handling systems may act as servers, while others act as clients. In such systems, client applications and client devices may be designed so that the majority of the heavily used resources are at a shared information handling system, such as a centralized server. The client devices may have minimal memory, disk storage, and processor power. Use of such client devices may reduce the total cost of ownership because of the reduced use of resources at the client devices and because the clients can be centrally administered and updated from the server. Such client devices may be particularly well-suited for a network which can handle a significant number of devices.
One such information handling system is a thin client. A user of a thin client information handling system may initiate a remote desktop protocol (RDP) session with a server via any remote desktop protocol client application executing on the client computing device (for example, Microsoft Remote Desktop Protocol, Citrix Independent Computing Architecture, VMware Personal Computer over Internet Protocol, etc.). Hypertext extensive markup language (HTML)5 redirection may happen on any of these aforementioned desktop protocols, including Teradici PCOIP (Personal Computer Over Internet Protocol).
HTML5 redirection redirects HTML5 contents from a server to a thin client. The HTML5 content is presented locally at the thin client. The HTML5 contents, for example, are played at the thin client at the same position where the redirected content was playing at the server. In this way, the HTML5 redirection is transparent to the user in that the user is not aware from where the HTML5 content is playing from or even when or if it has been redirected.
Problems exist, however, with websites that host HTML5 content. One problem is that of geography restrictions. A provider of HTML5 content on a website may have restrictions imposed that limit the distribution of content based on geography. That is, the provider may only be permitted to distribute content within a specified territory or geography. For example, Netflix and YouTube may not run United States programming in other countries unless first granted such geographical rights.
Second, content may be accessible in multiple geographic locations but is excluded in other geographic locations. For example, YouTube may be accessible from the United States and India but no accessible in China. The HTML5 content redirection of certain websites may not be distributed or played on a given thin client when the server is in one geographic location and the thin client is in another geographic location. For example, a hosted desktop server data center may be located in Hong Kong but the thin client connection to the Cloud is from a hosted desktop in China. From Hong Kong, the server hosted desktop websites are available but when the same content is redirected, the thin client in China cannot fetch the redirected HTML5 content because of geographic restrictions.
Further, some users and client devices may operate in a fully secured network environment that places restrictions on network connections, for example, restrictions may be placed on HTTP and HTTPS connections. The present invention overcomes these previous problems with redirected HTML5 content.